package com.sirun.ble.utils;

import static com.sirun.ble.constants.BleConfig.BleSdkTag;

import android.util.Log;


/**
 * 日志
 * Created by hzw
 */

public class AwLog {

	public static boolean isLog = false;
	private static boolean isLogFile = false;
	private final static String tag = "Aw.";

	public static void setDebug(boolean isDebug) {
		isLog = isDebug;
	}

	public static void setLogFile(boolean isLogFile) {
		AwLog.isLogFile = isLogFile;
	}

	static private void record(String s) {
		AwLogFileUtil.getInstance().writeFile(s);
	}

	public static void i(String msg) {
		if (null == msg) {
			return;
		}
		if (!isLog) {
			return;
		}
		Log.i(tag, msg);
		if (isLogFile) {
			record(msg);
		}
	}

	public static void withTime(String msg) {
		if (null == msg)
			return;
		i(msg + " Time: " + (int) Math.floor(System.currentTimeMillis() / 1000));
	}

	public static void d(String tag, String prefix, String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.d(BleSdkTag + "_" + tag + "（" + prefix + "）", msg);
		if (isLogFile)
			record(msg);
	}

	public static void d(String prefix, String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.d(tag + "（" + prefix + "）", msg);
		if (isLogFile)
			record(msg);
	}

	public static void d(String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.d(tag, msg);
		if (isLogFile)
			record(msg);
	}

	public static void e(String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.e(tag, msg);
		if (isLogFile)
			record(msg);
	}

	public static void v(String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.v(tag, msg);
		if (isLogFile)
			record(msg);
	}

	public static void w(String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.w(tag, msg);
		if (isLogFile)
			record(msg);
	}

	public static void i(String tag1, String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.i(tag + tag1, msg);
		if (isLogFile)
			record(msg);
	}

	public static void e(String tag1, String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.e(tag + tag1, msg);
		if (isLogFile)
			record(msg);
	}

	public static void v(String tag1, String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.v(tag + tag1, msg);
		if (isLogFile)
			record(msg);
	}

	public static void w(String tag1, String msg) {
		if (null == msg)
			return;
		if (!isLog)
			return;
		Log.w(tag + tag1, msg);
		if (isLogFile)
			record(msg);
	}
}
